package no18.javaio;

import java.io.IOException;
import java.io.PipedInputStream;
import java.io.PipedOutputStream;

/**
 * 把一个程序,线程或代码段的输出直接连接到另一个程序,线程或代码段的输入
 * @author gao
 *
 */
class PipedExample {
	public static void main(String args[]) throws IOException {
		byte dataA = 123, dataB = 111;
		//建立一个输入流
		PipedInputStream pis = new PipedInputStream();
		//创建一个连接以上输入流的输出流  (向以上输入流输出)
		PipedOutputStream pos = new PipedOutputStream(pis);
		System.out.println("PipedInputStream");
		try {
			pos.write(dataA);
			pos.write(dataB);
			System.out.println((byte) pis.read());
			System.out.println((byte) pis.read());
		} finally {
			pis.close();
			pos.close();
		}
	}
}
